import pandas as pd
import numpy as np

# 1.Series的索引
# 分为显示所有和隐式索引
# 1.1 显示索引
# a.使用index中元素作为索引值
# b.使用.loc[]方法访问
s1 = pd.Series({"python":150, "java":200, "c++":180})
print(s1)
# 使用索引名
print(s1["python"],s1.java)   # 值,int类型
print(s1[["python","c++"]]) # 一次取多个元素，使用连个中括号得到的类型是Series
# 使用.loc[]方法访问
print(s1.loc["python"],s1.loc["c++"]) # 值,int类型

# 1.2 隐式索引
print("\n1.2 隐式索引")
# a.使用整数作为索引值，从0开始
# b.使用.iloc[]方法访问
# 使用数字下标
print("使用数字下表")
# print(s1[0])    # 值,int类型
# print(s1[[0,2]]) # 类型是Series
# print(s1[[0]])    # 类型是Series
# 使用.iloc[]方法访问
print("使用.iloc[]方法")
print(s1.iloc[0],s1.iloc[2])
print(s1.iloc[[0,2]])
print(s1.iloc[[0]])


# 错误写法
# s1.iloc["python"]
# s1.loc[0]
print("\n-------------------------------------------")

data = np.random.randint(0,100,size=5)
index = ["小红","小明","小刚","小张","小李"]
df = pd.Series(data,index=index)
print(df)
print("\n,索引")
print(df.loc["小红"])
print(df.iloc[2])
print("\n,切片")
print(df.loc["小刚":"小李"])
print(df.iloc[2:4])
print("\nseries的操作")
print(df.shape) # shape: 行数,列数
print(df.index)
print(df.values)
print(df.size)
print(df.dtype)
print("\n-------------------------------------------")
print(df.head(2))
print(df.tail(2))









